#ifndef CHECKERSCOMPUTER_H
#define CHECKERSCOMPUTER_H

#include "CheckersBoard.h"
#include <iostream>
class CheckersComputer
{
    public:
        CheckersComputer();
        CheckersComputer(CheckersBoard* pBoard);
        ~CheckersComputer();
        CheckersComputer(const CheckersComputer& other);
        CheckersComputer& operator=(const CheckersComputer& other);

        vector<CheckersMove> getCandidateSet() { return candidateSet; }
        void setCandidateSet();

        CheckersMove getCandidateMove() { return *candidateMove; }
        void setCandidateMove(); //greedy function
        void doComputerMove();
    protected:
    private:
        vector<CheckersMove> candidateSet;
        CheckersMove* candidateMove;
        CheckersBoard* mCheckersBoard;
};

#endif // CHECKERSCOMPUTER_H
